package com.example.demo.service;

import com.example.demo.model.User;
import com.example.demo.model.Result;

import java.util.List;
/**
 * 抽象逻辑 接口，供外部调用，等于对dao，model等进行了包装。
 * */
public interface IUserService {
    /**
     * 1、获取所有用户
     * @return
     */
    List<User> findAll();

    /**
     * 2、根据 id 查询一条记录
     * @param id
     * @return
     */
    User getUserById(Integer id); // 有返回值  值类型  User getUserById

    /**
     * 3、增加一条记录
     * @param user
     */
    void insertUser(User user); // 无返回值 用 void

    /**
     * 4、更新一条记录
     * @param user
     */
    void updateUser(User user);

    /**
     * 5、删除一条记录
     * @param id
     */
    void deleteUser(Integer id);

    /**
     *  0 登录
     *  @param username 用户名和密码
     *  @param password
     *  @return
     * */
    public User login(String username,String password);

    /**
     *  6 注册
     *  @param username 用户名和密码
     *  @param password
     *  @return
     * */
    public void regist(String username, String password);

    /**
     * 7、根据 username 查询一条记录
     * @param username
     * @return
     */
    User getUserByName(String username);

}
